package br.uece.comp.paa.entity.beb;

import java.util.LinkedList;
import java.util.List;

/**
 * Nó a ser utilizado para a criação de uma árvore de Enumeração Branch & Bound.
 * 
 * @author juliano
 * 
 */
public class NoBB {

	private int idAresta;

	private List<NoBB> filhos;

	private NoBB pai;

	private Double custo;

	public Double getCusto() {
		return custo;
	}

	public void setCusto(Double custo) {
		this.custo = custo;
	}

	public NoBB getPai() {
		return pai;
	}

	public void setPai(NoBB pai) {
		this.pai = pai;
	}

	public NoBB(int id) {
		this.idAresta = id;
		filhos = new LinkedList<NoBB>();
		custo = 0d;
	}

	public List<NoBB> getFilhos() {
		return filhos;
	}

	public void addFIlho(NoBB filho) {
		filhos.add(filho);
	}

	public int getIdAresta() {
		return idAresta;
	}

	public boolean ehFolha() {
		return (filhos.size() == 0);
	}
}
